package com.contain2.sortedmap;

import java.util.Iterator;
import java.util.SortedMap;
import java.util.TreeMap;

public class Demo {

	public static void main(String[] args) {
		SortedMap<Integer, String> sortedMap = new TreeMap<Integer, String>();
		sortedMap.put(3, "paire");
		sortedMap.put(13, "orange");
		sortedMap.put(1, "banana");
		sortedMap.put(10, "apple");
		sortedMap.put(173, "beijing");
		sortedMap.put(167, "tomato");
		sortedMap.put(49, "foot");
		sortedMap.put(16, "milk");
		System.out.println(sortedMap);

		Integer low = sortedMap.firstKey();// 返回Map中的第一个键
		Integer high = sortedMap.lastKey();// 返回Map中的最后一个键
		System.out.println(low);
		System.out.println(high);

		Iterator<Integer> it = sortedMap.keySet().iterator();
		for (int i = 0; i <= 6; i++) {
			if (i == 3)
				low = it.next();
			if (i == 6)
				high = it.next();
			else
				it.next();
		}
		System.out.println(low);
		System.out.println(high);

		System.out.println(sortedMap.subMap(low, high));// 生成Map的子集，从low(包含)到high(不包含)
		System.out.println(sortedMap.headMap(high));// 生成Map的子集，由键小于high的所有键值对组成
		System.out.println(sortedMap.tailMap(low));// 生成Map的子集，由键大于或等于low的所有键值对组成
	}

}
